今天改用繳交homework的方式來寫筆記,順便回應ㄧ下Akshay的影片,雖然是中文,他也看不懂XD但是是我的良心作業,等我成功找到工作有能力支持他時,再去留個感謝文,現在還是潛水按讚訂閱分享就好哈哈哈哈哈哈
A Promise is an object representing the eventual completion or failure of an asynchronous operation.
Promise 是一個表示非同步運算的最終完成或失敗的物件。
延續昨天Akshay講的例子
//callback hell
createOrder(cart, function (orderId) {
	proceedToPayment(orderId, function (paymentInfo) {
		showOrderList(paymentInfo, function () {
			updateWallet()
		})
	})
})
//改寫成promise 一般寫法
createOrder(cart)
	.then(function (orderId) {
		return proceedToPayment(orderId)
	})
	.then(function (paymentInfo) {
		return showOrderList(paymentInfo)
	})
	.then(function () {
		return updateWallet()
	})
//改寫成promise 箭頭函式寫法
createOrder(cart)
	.then(orderId => proceedToPayment(orderId))
	.then(paymentInfo => showOrderList(paymentInfo))
	.then(() => updateWallet())
當一步一步從原始的callback改寫成promise後,可以開始感覺兩個語法的差別,主控權掌握在自己這邊,程式執行起來安心許多,另一方面,promise chain看起來比callback hell舒爽簡潔多了。
還有很重要的一點是promise is immutable, 一但成立即無法被改變。
昨天早上我在po鐵人文時,完全不會打字的阿咖說他也想參加鐵人賽,疏不知他每天出場XD
剩沒幾天了,每天大放送好了,一天兩則XD
2021/05/07
阿咖某天早上鞋子穿錯邊,
我跟他說,
他回說:你讓我自己決定好嗎?
2021/03/19
阿咖看著丁丁藥局的DM說:我5歲要這個禮物!
我:媽媽不是跟你說過你要看你有的啊!你已經有很多玩具,很幸福了耶!
咖:我有超多玩具會更幸福啊!